package com.elink.enginerring.category.service;

import java.util.List;

import com.elink.enginerring.category.entity.DetailCategory;
import com.elink.enginerring.category.entity.SecondaryCategory;
import com.elink.enginerring.category.entity.TopCategory;

public interface ICategoryService {

	
	/**
	 * 获取一级分类
	 * @return
	 */
	List<TopCategory> getTopCategory();
	
	/**
	 * 获取资料库一级分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfDatabase();
	
	/**
	 * 获取论文图书馆一级分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfLibrary();
	
	/**
	 * 获取职业考证一级分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfCert();

	/**
	 * 获取职业规划一级分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfPlan();
	
	/**
	 * 获取建筑类别一级分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfBuild();
	
	/**
	 * 获取新闻资讯一级分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfNews();
	
	/**
	 * 获取培训课程一级分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfVideo();
	
	/**
	 * 获取工程技能以及分类
	 * @return
	 */
	List<TopCategory> getTopCategoryOfSkill();
	
	List<SecondaryCategory> getSecondaryCategory(int tcId);

	List<DetailCategory> getDetailCategory(int scId, int dcTypeId);

	/**
	 * 添加一级分类
	 * @param tc
	 * @return
	 */
	void addTop(TopCategory tc);
	
	/**
	 * 修改一级分类
	 * @param tc
	 */
	void modifyTop(TopCategory tc);

	/**
	 * 添加二级分类
	 * @param sc
	 */
	void addSecond(SecondaryCategory sc);

	/**
	 * 修改二级分类
	 * @param sc
	 */
	void modifySecond(SecondaryCategory sc);

	
	/**
	 * 添加详情分类
	 * @param dc
	 */
	void addDetail(DetailCategory dc);

	/**
	 * 修改详情分类
	 * @param dc
	 */
	void modifyDetail(DetailCategory dc);

	/**
	 * 删除分类
	 * @param id
	 * @param type
	 */
	void del(int id, int type);
}
